#ifndef _MTP_PWM_H
#define _MTP_PWM_H
#include "sys.h"
#include <stdbool.h>
#include <integer.h>

#define OTP_EN        GPIO_PIN_1
#define OTP_EN_GPIO		GPIOG
#define OTP_EN_HIGH		HAL_GPIO_WritePin( OTP_EN_GPIO,OTP_EN,GPIO_PIN_SET)  //ON
#define OTP_EN_LOW		HAL_GPIO_WritePin( OTP_EN_GPIO,OTP_EN,GPIO_PIN_RESET) //OFF
#define OTP_Enable		1
#define OTP_Disable		0

#define AD5272_PIN_SCL							GPIO_PIN_8
#define AD5272_PIN_SDA							GPIO_PIN_11
#define AD5272_GPIO_SDA             GPIOG
#define AD5272_GPIO_SCL             GPIOG

#define AD5272_SCL_L 	HAL_GPIO_WritePin(AD5272_GPIO_SCL, AD5272_PIN_SCL,GPIO_PIN_RESET)
#define AD5272_SCL_H 	HAL_GPIO_WritePin(AD5272_GPIO_SCL, AD5272_PIN_SCL,GPIO_PIN_SET)
#define AD5272_SDA_L	HAL_GPIO_WritePin(AD5272_GPIO_SDA, AD5272_PIN_SDA,GPIO_PIN_RESET)
#define AD5272_SDA_H 	HAL_GPIO_WritePin(AD5272_GPIO_SDA, AD5272_PIN_SDA,GPIO_PIN_SET)

#define DEVICE_ADDRESS_VPP	    0x5E					


extern TIM_HandleTypeDef TIM12_Handler;      //定时器1PWM句柄 
extern TIM_OC_InitTypeDef TIM12_CH2Handler;  //定时器1通道3句柄

void OTP_EN_IO_init(void);
void TIM12_Init(u16 arr,u16 psc);
extern void TIM12_PWM_Init(u16 arr,u16 psc);
extern void TIM_SetTIM12Compare2(u32 compare);
extern void OTP_POWER_Init(double volt,u8 flag);
extern void VPP_POWER_Init(double volt, u8 flag);
extern void AD5272_GPIO_Config(void);

#endif

